// const gulp = require("gulp");

// //基本创建
// const foo = function (cb) {
//   console.log("gulp基本任务");
//   cb();
// };

// //异步任务
// const bar = function (cb) {
//   setTimeout(() => {
//     console.log("gulp异步任务");
//     cb();
//   }, 3000);
// };

// //导出任务
// module.exports = {
//   foo,
//   bar,
// };

// //早期编写任务的方式（gulp4.x之前）
// gulp.task("foo2", cb => {
//   console.log("早期gulp");
//   cb();
// });

// module.exports.default = cb => {
//   console.log("默认任务");
//   cb();
// };

const { series, parallel } = require("gulp");

const foo1 = function (cb) {
  setTimeout(() => {
    console.log("foo1");
    cb();
  }, 1000);
};

const foo2 = function (cb) {
  setTimeout(() => {
    console.log("foo2");
    cb();
  }, 2000);
};

const foo3 = function (cb) {
  setTimeout(() => {
    console.log("foo3");
    cb();
  }, 3000);
};

//串行任务  第一个完成才会执行接下来的任务
const seriesTask = series(foo1, foo2, foo3);
const parallelTask = parallel(foo1, foo2, foo3);

//导出任务
module.exports = {
  seriesTask,
  parallelTask,
};
